package com.cndw.kongfu;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

public class TestExcel {
	// 记录类的输出信息
	static Log log = LogFactory.getLog(TestExcel.class);

	public static String filePath = "E://excel2db/korea.xls";

	public static void main(String[] args) {
		try {
			// 创建对Excel工作簿文件的引用­
			HSSFWorkbook wookbook = new HSSFWorkbook(new FileInputStream(filePath));
			int sheets = wookbook.getNumberOfSheets();
			// 在Excel文档中，第一张工作表的缺省索引是0
			// 其语句为：HSSFSheet sheet = workbook.getSheetAt(0);
			for (int sn = 0; sn < sheets; sn++) {

				HSSFSheet sheet = wookbook.getSheetAt(sn);

				// 获取到Excel文件中的所有行数
				int rows = sheet.getPhysicalNumberOfRows();
				// 遍历行
				for (int i = 0; i < rows; i++) {
					// 读取左上端单元格
					HSSFRow row = sheet.getRow(i);
					// 行不为空­
					if (row != null) {
						// 获取到Excel文件中的所有的列­
						int cells = row.getPhysicalNumberOfCells();
						String value = "";
						// 遍历列
						for (int j = 0; j < cells; j++) {
							// 获取到列的值­
							HSSFCell cell = row.getCell(j);
							if (cell != null) {
								switch (cell.getCellType()) {
								case HSSFCell.CELL_TYPE_FORMULA:
									break;
								case HSSFCell.CELL_TYPE_NUMERIC:
									value += (int)cell.getNumericCellValue() + ",";
									break;
								case HSSFCell.CELL_TYPE_STRING:
									value += cell.getStringCellValue() + ",";
									break;
								default:
									value += "0";
									break;
								}
							}
						}
						System.out.println(value);
					}
				}
			}
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}

	}
}
